package com.panda.system.common.constant;

/**
 * 枚举常量
 */
public interface EnumConstants{
    //评价信息
    enum Evalution{
        NOT_EVALUATE("0","不用评价"),
        TO_EVALUATE("1","评价");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        Evalution(String code, String name){
            this.code=code;
            this.name = name;
        }
    }
    //任务状态
    enum TaskType{
        NEW_CREATE("0","新建"),
        TO_DISTRIBUTED("1","待分配"),
        BE_DISTRIBUTED("2","已分配"),
        HAVE_ORDER("3","已接单"),
        BEEN_OPERATING("4","已操作"),
        COMPLETE("5","完成");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        TaskType(String code, String name){
            this.code=code;
            this.name = name;
        }
    }

    //交易类型
    enum TransactionType{
        ON_DAY("0","当天"),
        RESERVED("1","预留");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        TransactionType(String code, String name){
            this.code=code;
            this.name = name;
        }
    }

    //订单类型
    enum OrderType{
        ON_PAY("0","现结单"),
        EVALUTION("1","评价单");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        OrderType(String code, String name){
            this.code=code;
            this.name = name;
        }
    }

    //返款类型
    enum RebatesType{
        BEFORE_PAYMENT("0","付款前"),
        AFTER_PAYMENT("1","付款后");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        RebatesType(String code, String name){
            this.code=code;
            this.name = name;
        }
    }

    //返款任务状态
    enum RebatesTypeTaskStatus{
        NEW_CREATE("0","新建"),
        TO_REBATES("1","待返款"),
        BE_Rebates("2","已返款"),
        COMPLETED("3","已完成");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        RebatesTypeTaskStatus(String code, String name){
            this.code=code;
            this.name = name;
        }
    }

    // 人员类型
    enum BuyerType{
        NEW_USER("0","新人"),
        OLD_USER("1","老人");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        BuyerType(String code, String name){
            this.code=code;
            this.name = name;
        }
    }

    // 返款渠道
    enum RebatesChannel{
        WX("0","微信"),
        BANK_CARD("1","银行卡");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        RebatesChannel(String code, String name){
            this.code=code;
            this.name = name;
        }
    }

    // 任务完成明细状态
    enum TaskDetailStatus{
        NEW_CREATE("0","新建"),
        TO_PAY("1","待付款"),
        BE_PAY("2","已付款"),
        TO_EVALUTION("3","待评价"),
        BE_EVALUTION("4","已评价"),
        HAVE_AFTER_EVALUATION("5","已追评"),
        COMPLETE("6","完成"),
        UNDO("7","已撤销");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        TaskDetailStatus(String code, String name){
            this.code=code;
            this.name = name;
        }
    }

    // 待办枚举
    enum TodoType{
        TASK_OPERATION("OPERATION","操作"),
        TASK_EVALUATION("EVALUATION","评价"),
        TASK_AFTER_EVALUATION("AFTER_EVALUATION","评价");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        TodoType(String code, String name){
            this.code=code;
            this.name = name;
        }
    }

    // 操作类型枚举
    enum OperationType{
        DISTRIBUTION("DISTRIBUTION","分配"),
        ORDER("ORDER","接单");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        OperationType(String code, String name){
            this.code=code;
            this.name = name;
        }
    }

    // 系统通用状态
    enum SysStatus{
        OPEN("0","开启"),
        DOWN("1","关闭");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        SysStatus(String code, String name){
            this.code=code;
            this.name = name;
        }
    }
    enum UserTaskStatus{
        OPEN("0","开启"),
        DOWN("1","关闭"),
        TO_SEND("2","转派");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        UserTaskStatus(String code, String name){
            this.code=code;
            this.name = name;
        }
    }

    enum EvalutionTaskStatus{
        OPEN("0","待评价"),
        DOWN("1","已评价"),
        BE_SEND("2","待追评"),
        COMPLETE("3","完成");

        String code;
        String name;

        public String getCode() {
            return code;
        }

        public void setCode(String code) {
            this.code = code;
        }

        public String getName() {
            return name;
        }

        public void setName(String name) {
            this.name = name;
        }

        EvalutionTaskStatus(String code, String name){
            this.code=code;
            this.name = name;
        }
    }

    // 返款金额计算枚举
    enum RebatesAmount{
        ORDER_TYPE("orderType","order_type"),
        REBATES_CONFIG("rebatesType","rebates_type"),
        BYER_CONFIG("buyerType","user_type");

        String field;
        String dict;

        public String getField() {
            return field;
        }

        public void setField(String field) {
            this.field = field;
        }

        public String getDict() {
            return dict;
        }

        public void setDict(String dict) {
            this.dict = dict;
        }

        RebatesAmount(String field, String dict){
            this.field=field;
            this.dict = dict;
        }
    }
}
